package com.hcl.orm.core.dialect;

import com.hcl.orm.core.annotation.DBType;
import com.hcl.orm.core.annotation.SqlCommandType;

import java.util.Map;

/**
 * @author hucl
 * @projectName hcl-orm
 * @description: TODO
 * @date 2021/8/1113:28
 */
public class SqlMetadata {
    private SqlCommandType sqlCommandType;
    private String rawSql;
    private String tableName;
    private boolean selective;
    private Map<Integer, Integer> paramsIndexMap;
    private DBType targetType;


    public String getTableName() {
        return tableName;
    }

    public void setTableName(String tableName) {
        this.tableName = tableName;
    }

    public String getRawSql() {
        return rawSql;
    }

    public void setRawSql(String rawSql) {
        this.rawSql = rawSql;
    }

    public SqlCommandType getSqlCommandType() {
        return sqlCommandType;
    }

    public void setSqlCommandType(SqlCommandType sqlCommandType) {
        this.sqlCommandType = sqlCommandType;
    }

    public void setSelective(boolean selective) {
        this.selective = selective;
    }

    public boolean isSelective() {
        return selective;
    }

    public Map<Integer, Integer> getParamsIndexMap() {
        return paramsIndexMap;
    }

    public void setParamsIndexMap(Map<Integer, Integer> paramPlaceholders) {
        this.paramsIndexMap = paramPlaceholders;
    }

    public DBType getTargetType() {
        return targetType;
    }

    public void setTargetType(DBType targetType) {
        this.targetType = targetType;
    }
}
